1. Field of the Invention
The present invention is related to data storage in digital computers generally and more specifically to data storage using write once-read many (WORM) devices.
2. Description of the Prior Art
In computer systems, data which has a lifetime longer than the period during which the program which is using the data is executing is generally stored in file systems. For as long as file systems have existed, making backup copies of the files has been a problem. Backup copies are necessary for many reasons:
Computer system hardware or software may fail, causing losses of files;
User errors may inadvertently destroy files;
Users or intruders into the system may maliciously destroy files;
Users may need to recover an earlier version of data stored in the files.
Since making backup copies takes time and does not further the work at hand, users often neglect to make backups as often as they should. If files are lost and there are no backups, or if the backups are too old, enormous and expensive difficulties can result.
In response to this problem, the art has developed various automated backup techniques. Recently, automated backup systems have emerged in which the copies of the backed up files are stored on write once-read many or WORM devices. As the name implies, data can be written once to a WORM device and the data stored thereon can be read many times. Modern WORM devices are optical devices which provide random access to enormous quantities of data. A description of an optical disk WORM device may be found in
Gait, Jason, "The Optical File Cabinet: A Random-Access File System for Write-once Optical Disks", IEEE Computer, June, 1988, pp. 11-22 PA1 Hume, Andrew, "The File Motel--An Incremental Backup System for UNIX" 1988 Summer Usenix Conference Proceedings, June 20-24, 1988, pp. 61-72
An example of a file backup system employing an optical disk can be found in
A problem which the above file backup system shares with many others is that the backup copies of the files are not as accessible to users of a computer system as the files presently on the system. In some cases, the backup copies must be physically retrieved from an archive and loaded onto the computer system; in others, like the system described in the above publication, the files are physically available but must be specifically mounted on the file system before they are accessible. Further, special tools are often required to deal with the backup files.
Of course, if a file system is stored on media which cannot be erased, then the need for backups to protect against human mistakes or malice or equipment failures is eliminated. The art has thus developed file systems in which the data is stored on an optical WORM system. One such file system is described in the Gait article cited above. While such file systems are essentially indestructible, they are not without their problems. First, since the entire file system is stored on optical disk, many disk blocks are wasted on the storage of transient files, i.e., files which are created and deleted in the course of execution of a program. Second, optical WORM devices are still substantially slower than magnetic disk devices, and file system performance suffers accordingly. While the speed problem can be alleviated by encaching data which has been read from the optical WORM device so that there is no need to retrieve it from the WORM device for a following read, encachement cannot solve the problem of wasted disk blocks. Further, though Gait's WORM file system contains substantially all of the data that was ever in the file system, it includes no provision for making backups at times that are significant to the users of the system, and therefore does not provide a way of reconstituting a file system exactly as it was at such a significant time.
What is needed, and what is provided by the present invention, is a file system in which the user can select significant times to make backups and in which the backups made at these times are as available to the user as any other files.